1. Field of the Invention
The present invention relates to a system and method for ceasing the training of neural networks at or near the optimal training point. In particular the invention applies a test set to the neural network after each training iteration in order to determine when the neural network is no longer learning the underlying pattern in the data, but is instead fitting the noise in the training set.
2. Description of the Prior Art
Any organization, whether commercial, charitable, not for profit, or governmental needs to plan its future activities. Planning necessarily requires estimation of future needs and demands. Thus, prediction and classification plays an important role in the planning process of any organization. The ability to accurately predict future conditions and needs is critical to the survival of many organizations. These organizations rely on predictions and classifications so that they can allocate resources efficiently, balance workload against the predicted demand and plan their operations to meet the needs and demands that will be placed upon them.
Most organizations require forecasts of volumes which are affected by historical trends over a wide variety of variables. Any entitlement program, service organization or sales force faces requirements for workload balancing based on projections of the number of customers or the volume of orders. These kinds of predictions are typically dependent on trends in customer behavior. As a result, these organizations are increasingly adopting Customer Relationship Management programs, in which they are frequently called upon to classify how customers are likely to respond to a given offer.
These prediction and classification problems are typically solved using neural networks. One of the characteristics of neural networks is the frequent requirement to have to train the networks for long periods of time. Currently, neural networks are commonly trained to the point where the average sum-squared error on the training set is reduced to a given level, or a predetermined number of iterations has been exceeded. Thus, there has been a long existing need in the art to dynamically determine the point at which further training no longer makes any improvement in the predictive or classification ability of the neural network. Aside from the improvement in training time, there has also been a long existing need in the art to know what the variance of the optimal fit to the known test set is for a given network architecture. Knowing this value greatly reduces the time spent in trial and error tuning of the neural network.